package com.cheng.example.book.advise151.chap6.client85;

//枚举可以自定义的方法
enum Season {
    Spring, Summer, Autumn, Winter;

    public static Season getComfortableSeason(){
        return Spring;
    }



    public static void doSports(Season season) {
        switch (season) {
            case Spring:
                System.out.println("春天放风筝");
                break;
            case Summer:
                System.out.println("夏天游泳");
                break;
            case Autumn:
                System.out.println("秋天是收获的季节");
                break;
            case Winter:
                System.out.println("冬天滑冰");
                break;
            default:
                System.out.println("输出错误");
                break;
        }
    }

    //因为编译时，编译器判断出switch语句后跟的参数是枚举类型，
    // 然后就会根据枚举的排序值继续匹配，也就是或上面的代码与以下代码相同：　　
//    public static void doSports1(Season season) {
//        switch (season.ordinal()) {
//            case season.Spring.ordinal():
//                System.out.println("春天放风筝");
//                break;
//            case season.Summer.ordinal():
//                System.out.println("夏天游泳");
//                break;
//            //......
//        }
//    }

    public static void main(String[] args) {
        doSports(null);
    }
}